package com.example.cyk.bus;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

import net.daum.adam.publisher.AdView;
import net.daum.adam.publisher.impl.AdError;


public class MyActivity extends Activity {

    WebView myView;
    AdView adView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
        myView = (WebView)findViewById(R.id.webView);
        //myView.loadUrl("http://m.blog.naver.com/1000glory");
        myView.loadUrl("http://m.bus.go.kr/");
        myView.getSettings().setJavaScriptEnabled(true);
        myView.getSettings().setUseWideViewPort(true);
        myView.setInitialScale(1);
        myView.setWebViewClient(new MyView());
        initAdam();
        //m_adView = (AdView) findViewById(R.id.adview);
        //m_adView.setOnAdLoadedListener();

        Log.i("log", "onCreate");
    }
    private void initAdam() {
        // Ad@m sdk 초기화 시작
        adView = (AdView) findViewById(R.id.adview);
        // 광고 리스너 설정
        // 1. 광고 클릭시 실행할 리스너
        adView.setOnAdClickedListener(new AdView.OnAdClickedListener() {
            @Override    public void OnAdClicked() {
                Log.i("log", "광고를 클릭했습니다.");
            }
        });
        // 2. 광고 내려받기 실패했을 경우에 실행할 리스너
        adView.setOnAdFailedListener(new AdView.OnAdFailedListener() {
            @Override    public void OnAdFailed(AdError error, String message) {
                Log.w("log", message);
            }
        });
        // 3. 광고를 정상적으로 내려받았을 경우에 실행할 리스너
        adView.setOnAdLoadedListener(new AdView.OnAdLoadedListener() {
            @Override    public void OnAdLoaded() {
                Log.i("log", "광고가 정상적으로 로딩되었습니다.");
            }
        });
        // 4. 광고를 불러올때 실행할 리스너
        adView.setOnAdWillLoadListener(new AdView.OnAdWillLoadListener() {
            @Override    public void OnAdWillLoad(String url) {
                Log.i("log", "광고를 불러옵니다. : " + url);
            }
        });
        // 5. 전면형 광고를 닫았을때 실행할 리스너
        adView.setOnAdClosedListener(new AdView.OnAdClosedListener() {
            @Override    public void OnAdClosed() {
                Log.i("log", "광고를 닫았습니다.");
            }
        });

        // 할당 받은 clientId 설정
        adView.setClientId("9cccZ0VT1489b6606d7");

        // 광고 갱신 주기를 12초로 설정   //
        adView.setRequestInterval(12);
        // 광고 영역에 캐시 사용 여부 : 기본 값은 true

        // Animation 효과 : 기본 값은 AnimationType.NONE
        adView.setAnimationType(AdView.AnimationType.FLIP_HORIZONTAL);
        adView.setVisibility(View.VISIBLE);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        if (adView != null) {
            adView.destroy();
            adView = null;
        }
    }

    class MyView extends WebViewClient {
        public boolean shouldOverrideUrlLoading(WebView view, String url){
            view.loadUrl(url);
            return true;
        }
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if ((keyCode == KeyEvent.KEYCODE_BACK) && myView.canGoBack()) {
            myView.goBack();
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }
}
